package com.kefu.call.model;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotEmpty;
import java.io.Serializable;
import java.util.List;

@TableName(value= "call_activity_base_info")
@Data
@ApiModel(description = "任务管理")
public class ActivityBaseInfo implements Serializable {
    /**
     * 活动id
     */
    @TableId(value="activity_id")
    @NotEmpty
    @ApiModelProperty("主键")
    private String activityId;

    /**
     * 创建时间
     */
    @TableField(value = "create_time")
    @ApiModelProperty("创建时间")
    private Long createTime;

    /**
     * 创建人
     */
    @TableField(value = "create_user")
    @ApiModelProperty(value = "创建人")
    private String createUser;
    /**
     * 创建人
     */
    @TableField(exist=false)
    @ApiModelProperty(value = "创建人姓名")
    private String createName;

    /**
     * 修改时间
     */
    @TableField(value = "update_time")
    @ApiModelProperty(value = "修改时间")
    private Long updateTime;

    /**
     * 修改人
     */
    @TableField(value = "update_user")
    @ApiModelProperty(value = "修改人")
    private String updateUser;

    /**
     * 数据状态0 无效，1有效
     */
    @TableField(value = "data_status")
    @ApiModelProperty(value = "数据状态0 无效，1有效")
    private Integer dataStatus;

    /**
     * 租户
     */
    @TableField(value = "tenant_id")
    @ApiModelProperty(value = "租户")
    private String tenantId;

    /**
     * 活动名称
     */
    @TableField(value = "activity_name")
    @ApiModelProperty(value = "活动名称")
    private String activityName;

    /**
     * 活动描述
     */
    @TableField(value = "activity_desp")
    @ApiModelProperty(value = "活动描述")
    private String activityDesp;

    /**
     * 活动类型
     */
    @TableField(value = "activity_type")
    @ApiModelProperty(value = "活动类型")
    private Integer activityType;

    /**
     * 活动状态
     */
    @TableField(value = "activity_status")
    @ApiModelProperty(value = "活动状态")
    private Integer activityStatus;

    /**
     * 活动开始时间
     */
    @TableField(value = "activity_start_time")
    @ApiModelProperty(value = "活动开始时间")
    private Long activityStartTime;

    /**
     * 活动结束时间
     */
    @TableField(value = "activity_end_time")
    @ApiModelProperty(value = "活动结束时间")
    private Long activityEndTime;

    /**
     * 是否隐藏号码
     */
    @TableField(value = "hidden_num")
    @ApiModelProperty(value = "是否隐藏号码")
    private Integer hiddenNum;

    /**
     * 是否开启问卷调查
     */
    @TableField(value = "paper_open")
    @ApiModelProperty(value = "是否开启问卷调查")
    private Integer paperOpen;

    /**
     * 问卷ID
     */
    @TableField(value = "paper_id")
    @ApiModelProperty(value = "问卷ID")
    private String paperId;

    /**
     * 助手id
     */
    @TableField(value = "helper_id")
    @ApiModelProperty(value = "坐席助手ID")
    private String helperId;

    /**
     * 任务清单数
     */
    @TableField(exist=false)
    @ApiModelProperty(value = "活动数")
    private Integer activityNumber;

    /**
     * 任务分配数
     */
    @TableField(exist=false)
    @ApiModelProperty(value = "分配数")
    private Integer assignmentNumber;


    /**
     * 任务拨打进度完成进度
     */
    @TableField(exist=false)
    @ApiModelProperty(value = "分配拨打完成")
    private Integer assignmentFinishNumber;

    /**
     * 任务清单信息
     */
    @TableField(exist=false)
    @ApiModelProperty(value = "任务清单信息")
    private List<ActivityInventoryInfo> activityInventoryInfoList;

    private static final long serialVersionUID = 1L;
}